//
//  P3799.cpp
//  Algorithm
//
//  Created by 刘锦程 on 2023/9/11.
//

//#include <stdio.h>
//#include<iostream>
//#define mod 1000000007
//using namespace std;
//int n;
//int a[100003];
//int book[100003];
//int flag=0;
//int twn[4],zz=0,ans;
//
//void dfs(int step,int th,int now){
//    if(step==4){
//        if(a[twn[0]]+a[twn[1]]==a[now]){
//            ans++;
//        }
//        zz=0;
//        return;
//    }
//    else{
//        for(int j=th+1;j<=n;j++){
//            if(!flag){
//                if(a[j]!=a[th]) continue;
//                else flag=1;
//                    book[j]=1;
//                    dfs(step+1,j,now);
//                    book[j]=0;
//                    flag=0;
//            }else{
//                if(!book[j]){
//                    book[j]=1;
//                    twn[zz++]=j;
//                    dfs(step+1,j,now);
//                    book[j]=0;
//                }
//            }
//        }
//    }
//}
//bool cmp(int a,int b){
//    return a>b;
//}
//int P3799ans(){
//    scanf("%d",&n);
//    for(int i=1;i<=n;i++){
//        scanf("%d",&a[i]);
//    }
//    sort(a+1,a+n+1,cmp);
//    //for(int i=1;i<=n;i++)
//        dfs(1,i,i);
//    cout<<ans<<endl;
//    return 0;
//}
#include<iostream>
#include<cstdio>
using namespace std;
int n;
int a[100004];
int cont[5010];
const long long mod=1e9+7;
int P3799ans(){
    ios::sync_with_stdio(0);//初步释放
           cin.tie(0);//解绑输入流
           cout.tie(0);//解绑输出流
    cin>>n;
    long long ans=0;
    int maxi=-1e9;
    int mini=1e9;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        cont[a[i]]++;
        if(a[i]<mini)mini=a[i];
        if(a[i]>maxi)maxi=a[i];
    }
    for(int j=mini+1;j<=maxi;j++){
        if(cont[j]>=2){
            for(int i=mini;i<=j/2;i++){
                if(cont[i]&&cont[j-i]){
                   if(i!=j-i){
                        ans=ans+((cont[j]*(cont[j]-1)/2%mod)*(cont[j-i]*cont[i]%mod));
                    }else if(cont[i]>=2){
                        ans=ans+((cont[j]*(cont[j]-1)/2)*(cont[i]*(cont[i]-1)/2)%mod)%mod;
                    }
                }
            }
        }
    }
    cout<<ans%mod<<endl;
    return 0;
}
